{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "c515fd5f",
   "metadata": {},
   "source": [
    "# 百度AI开放平台\n",
    "## 通用物体和场景识别\n",
    "* 接口描述\n",
    "> 该请求用于通用物体及场景识别，即对于输入的一张图片（可正常解码，且长宽比适宜），输出图片中的多个物体及场景标签。\n",
    "* 请求示例\n",
    "> HTTP方法：POST\n",
    "* 请求URL\n",
    "> https://aip.baidubce.com/rest/2.0/image-classify/v2/advanced_general\n",
    "### 鉴权认证机制（access_token）\n",
    "* 获取Access Token\n",
    "* 获取access_token示例代码"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "cb5a40a2",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'refresh_token': '25.3cf833db09c78ddbed2a8399c2d75274.315360000.1964328392.282335-25863385', 'expires_in': 2592000, 'session_key': '9mzdC3xlwnin27bY7RAA9dOWYyp/7/eSJ/yz1eJIVTrlflazAWt4grkPrSguFJAMiTKECsUo7gi6QWIdKk9SSyFrxDbXmg==', 'access_token': '24.0d5cc14bc623e6595b3a671e076d0b4b.2592000.1651560392.282335-25863385', 'scope': 'public vis-classify_dishes vis-classify_car brain_all_scope vis-classify_animal vis-classify_plant brain_object_detect brain_realtime_logo brain_dish_detect brain_car_detect brain_animal_classify brain_plant_classify brain_ingredient brain_advanced_general_classify brain_custom_dish brain_poi_recognize brain_vehicle_detect brain_redwine brain_currency brain_vehicle_damage brain_multi_ object_detect wise_adapt lebo_resource_base lightservice_public hetu_basic lightcms_map_poi kaidian_kaidian ApsMisTest_Test权限 vis-classify_flower lpq_开放 cop_helloScope ApsMis_fangdi_permission smartapp_snsapi_base smartapp_mapp_dev_manage iop_autocar oauth_tp_app smartapp_smart_game_openapi oauth_sessionkey smartapp_swanid_verify smartapp_opensource_openapi smartapp_opensource_recapi fake_face_detect_开放Scope vis-ocr_虚拟人物助理 idl-video_虚拟人物助理 smartapp_component smartapp_search_plugin avatar_video_test b2b_tp_openapi b2b_tp_openapi_online', 'session_secret': '3db3e5ee4842812bdf207fcdd0f57533'}\n"
     ]
    }
   ],
   "source": [
    "# encoding:utf-8\n",
    "import requests \n",
    "\n",
    "# client_id 为官网获取的AK， client_secret 为官网获取的SK\n",
    "host = 'https://aip.baidubce.com/oauth/2.0/token?'\n",
    "payload = {\n",
    "    'grant_type':'client_credentials',\n",
    "    'client_id':'DbCKFZ5oPb7poGzA8nvbxGlt',\n",
    "    'client_secret':'RjA6DFnpwlGGSDDOOH1MlHFf5Duirxin'\n",
    "}\n",
    "response = requests.get(host,params=payload)\n",
    "if response:\n",
    "    print(response.json())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "0bc3c976",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'refresh_token': '25.3cf833db09c78ddbed2a8399c2d75274.315360000.1964328392.282335-25863385',\n",
       " 'expires_in': 2592000,\n",
       " 'session_key': '9mzdC3xlwnin27bY7RAA9dOWYyp/7/eSJ/yz1eJIVTrlflazAWt4grkPrSguFJAMiTKECsUo7gi6QWIdKk9SSyFrxDbXmg==',\n",
       " 'access_token': '24.0d5cc14bc623e6595b3a671e076d0b4b.2592000.1651560392.282335-25863385',\n",
       " 'scope': 'public vis-classify_dishes vis-classify_car brain_all_scope vis-classify_animal vis-classify_plant brain_object_detect brain_realtime_logo brain_dish_detect brain_car_detect brain_animal_classify brain_plant_classify brain_ingredient brain_advanced_general_classify brain_custom_dish brain_poi_recognize brain_vehicle_detect brain_redwine brain_currency brain_vehicle_damage brain_multi_ object_detect wise_adapt lebo_resource_base lightservice_public hetu_basic lightcms_map_poi kaidian_kaidian ApsMisTest_Test权限 vis-classify_flower lpq_开放 cop_helloScope ApsMis_fangdi_permission smartapp_snsapi_base smartapp_mapp_dev_manage iop_autocar oauth_tp_app smartapp_smart_game_openapi oauth_sessionkey smartapp_swanid_verify smartapp_opensource_openapi smartapp_opensource_recapi fake_face_detect_开放Scope vis-ocr_虚拟人物助理 idl-video_虚拟人物助理 smartapp_component smartapp_search_plugin avatar_video_test b2b_tp_openapi b2b_tp_openapi_online',\n",
       " 'session_secret': '3db3e5ee4842812bdf207fcdd0f57533'}"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "response.json()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "c7db3a9e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'24.0d5cc14bc623e6595b3a671e076d0b4b.2592000.1651560392.282335-25863385'"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "coco_AT = response.json()['access_token']\n",
    "coco_AT"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d8fcdade",
   "metadata": {},
   "source": [
    "* 请求参数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "d7f41827",
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "e62e55cc",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>参数</th>\n",
       "      <th>是否必选</th>\n",
       "      <th>类型</th>\n",
       "      <th>可选值范围</th>\n",
       "      <th>说明</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>image</td>\n",
       "      <td>和url二选一</td>\n",
       "      <td>string</td>\n",
       "      <td>-</td>\n",
       "      <td>图像数据，base64编码，要求base64编码后大小不超过4M，最短边至少15px，最长边...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>url</td>\n",
       "      <td>和image二选一</td>\n",
       "      <td>string</td>\n",
       "      <td>-</td>\n",
       "      <td>图片完整URL，URL长度不超过1024字节，URL对应的图片base64编码后大小不超过4...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>baike_num</td>\n",
       "      <td>否</td>\n",
       "      <td>integer</td>\n",
       "      <td>-</td>\n",
       "      <td>返回百科信息的结果数，默认不返回</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          参数       是否必选       类型 可选值范围  \\\n",
       "0      image    和url二选一   string     -   \n",
       "1        url  和image二选一   string     -   \n",
       "2  baike_num          否  integer     -   \n",
       "\n",
       "                                                  说明  \n",
       "0  图像数据，base64编码，要求base64编码后大小不超过4M，最短边至少15px，最长边...  \n",
       "1  图片完整URL，URL长度不超过1024字节，URL对应的图片base64编码后大小不超过4...  \n",
       "2                                   返回百科信息的结果数，默认不返回  "
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 图像识别 url ：https://ai.baidu.com/ai-doc/IMAGERECOGNITION/Xk3bcxe21\n",
    "pd.read_html('https://ai.baidu.com/ai-doc/IMAGERECOGNITION/Xk3bcxe21')[2]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "cc51f68d",
   "metadata": {},
   "source": [
    "示例代码"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "18b2a038",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'result_num': 5, 'result': [{'keyword': '海洋', 'score': 0.783014, 'root': '自然风景-海洋'}, {'keyword': '湖泊', 'score': 0.618497, 'root': '自然风景-湖泊'}, {'keyword': '港口码头', 'score': 0.451519, 'root': '建筑-现代建筑'}, {'keyword': '江河', 'score': 0.238479, 'root': '自然风景-江河'}, {'keyword': '天空', 'score': 0.054879, 'root': '自然风景-天空'}], 'log_id': 1510509076918090155}\n"
     ]
    }
   ],
   "source": [
    "# encoding:utf-8\n",
    "\n",
    "import requests\n",
    "import base64\n",
    "\n",
    "'''\n",
    "通用物体和场景识别\n",
    "'''\n",
    "\n",
    "request_url = \"https://aip.baidubce.com/rest/2.0/image-classify/v2/advanced_general\"\n",
    "# 二进制方式打开图片文件\n",
    "# 1.图片文件准备\n",
    "f = open('OET.jpeg', 'rb')\n",
    "img = base64.b64encode(f.read())\n",
    "\n",
    "params = {\"image\":img}\n",
    "access_token = coco_AT\n",
    "\n",
    "# 2.酬载准备\n",
    "payload = {\n",
    "    'access_token':coco_AT,\n",
    "    'image':img\n",
    "}\n",
    "\n",
    "\n",
    "headers = {'content-type': 'application/x-www-form-urlencoded'}\n",
    "response = requests.post(request_url, data=payload, headers=headers)\n",
    "if response:\n",
    "    print (response.json())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "842a793d",
   "metadata": {},
   "source": [
    "## 菜品识别"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "fa8966aa",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'result_num': 5, 'result': [{'calorie': '154', 'has_calorie': True, 'name': '鱼香肉丝', 'probability': '0.930943', 'baike_info': {}}, {'calorie': '240', 'has_calorie': True, 'name': '酱肉丝', 'probability': '0.0284197', 'baike_info': {'baike_url': 'http://baike.baidu.com/item/%E9%85%B1%E8%82%89%E4%B8%9D/2689787', 'image_url': 'https://bkimg.cdn.bcebos.com/pic/b90e7bec54e736d1fb1014b39b504fc2d562690e', 'description': '酱肉丝是一道传统的家常菜，主要制作食材是猪里脊肉，配料是豆腐皮等，调料是甜面酱、白糖、料酒等，通过大火烧制而成。'}}, {'calorie': '268', 'has_calorie': True, 'name': '肉丝饭', 'probability': '0.0260036', 'baike_info': {}}, {'calorie': '174', 'has_calorie': True, 'name': '肉丝', 'probability': '0.00370738', 'baike_info': {'baike_url': 'http://baike.baidu.com/item/%E8%82%89%E4%B8%9D/5216182', 'image_url': 'https://bkimg.cdn.bcebos.com/pic/562c11dfa9ec8a13ab7a3a71fd03918fa0ecc03b', 'description': '肉丝即为切成丝状的肉，主要是指猪肉肉丝。肉丝菜主要有青椒肉丝、春笋肉丝、肉丝芝麻、龙爪肉丝、茭白肉丝、酱爆肉丝、钱江肉丝等。'}}, {'has_calorie': False, 'name': '盖浇饭', 'probability': '0.00267089', 'baike_info': {'baike_url': 'http://baike.baidu.com/item/%E7%9B%96%E6%B5%87%E9%A5%AD/1192126', 'image_url': 'https://bkimg.cdn.bcebos.com/pic/3c6d55fbb2fb43166d2207bff6ec512309f791527597', 'description': '盖浇饭是一种古老的汉族小吃。属于西北甘肃地区叫法，东北叫盖饭，广东叫碟头饭，还有的地方只是叫咖喱土豆饭，咖喱鸡饭，麻婆豆腐饭，以此类推这样子，其实都是菜和饭放在一个盘子里吃，菜浇在饭上，由此称作盖浇饭。其特点饭菜结合、快而热。而风俗各别，如今的盖浇饭，各地作法也不一样，用料也不同，所以也各有特色。'}}], 'log_id': 1510513596697361713}\n"
     ]
    }
   ],
   "source": [
    "# encoding:utf-8\n",
    "\n",
    "import requests\n",
    "import base64\n",
    "\n",
    "'''\n",
    "菜品识别\n",
    "'''\n",
    "\n",
    "request_url = \"https://aip.baidubce.com/rest/2.0/image-classify/v2/dish\"\n",
    "# 二进制方式打开图片文件\n",
    "f = open('yuxiangrousi.jpeg', 'rb')\n",
    "img = base64.b64encode(f.read())\n",
    "\n",
    "access_token = coco_AT\n",
    "payload = {\n",
    "    'access_token':coco_AT,\n",
    "    'image':img,\n",
    "    'baike_num':5,\n",
    "    'top_num':5\n",
    "    \n",
    "}\n",
    "\n",
    "headers = {'content-type': 'application/x-www-form-urlencoded'}\n",
    "response = requests.post(request_url, data=payload, headers=headers)\n",
    "if response:\n",
    "    print (response.json())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "26ea6721",
   "metadata": {},
   "source": [
    "### 植物识别"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "bd186fb4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'result': [{'name': '德国鸢尾', 'score': 0.9869747, 'baike_info': {'baike_url': 'http://baike.baidu.com/item/%E5%BE%B7%E5%9B%BD%E9%B8%A2%E5%B0%BE/1193911', 'image_url': 'https://bkimg.cdn.bcebos.com/pic/a044ad345982b2b733f684a735adcbef76099b6c', 'description': '德国鸢尾(学名：Iris germanica L.)是鸢尾科鸢尾属植物，多年生草本。根状茎粗壮而肥厚，常分枝，扁圆形，斜伸，具环纹，黄褐色；须根肉质，黄白色。叶直立或略弯曲，淡绿色、灰绿色或深绿色，常具白粉，剑形。花茎光滑，黄绿色。花大，鲜艳，直径可达12厘米；花色因栽培品种而异，多为淡紫色、蓝紫色、深紫色或白色，有香味。蒴果三棱状圆柱形，顶端钝，无喙，成熟时自顶端向下开裂为三瓣；种子梨形，黄棕色，表面有皱纹，顶端生有黄白色的附属物。花期4-5月，果期6-8月。原产于欧洲中部和南部。中国各地庭园常见栽培。对土壤要求不严，抗旱、抗寒能力强。喜温暖、稍湿润和阳光充足环境。耐寒，耐干燥和半阴，怕积水。宜疏松、肥沃和排水良好的含石灰质土壤。德国鸢尾耐寒性强，生长健壮，有深紫、纯白、桃红、淡紫等颜色，是极好的观花地被植物，在园林绿化中常用于花坛、花境布置。同时，可盆栽观赏，也是重要的切花材料。(概述图参考来源：)'}}, {'name': '鸢尾', 'score': 0.5152789, 'baike_info': {'baike_url': 'http://baike.baidu.com/item/%E9%B8%A2%E5%B0%BE/784374', 'image_url': 'https://bkimg.cdn.bcebos.com/pic/5fdf8db1cb1349542259b6915c4e9258d0094afb', 'description': '鸢尾(学名：Iris tectorum Maxim.)又名：蓝蝴蝶、紫蝴蝶、扁竹花等，属百合目、鸢尾科、鸢尾属多年生草本，根状茎粗壮，直径约1cm，斜伸；叶长15~50cm，宽1.5~3.5cm，花蓝紫色，直径约10cm；蒴果长椭圆形或倒卵形，长4.5~6cm，直径2~2.5cm。原产于中国中部以及日本，主要分布在中国中南部。可供观赏，花香气淡雅，可以调制香水，其根状茎可作中药，全年可采，具有消炎作用。'}}, {'name': '香根鸢尾', 'score': 0.044863418, 'baike_info': {'baike_url': 'http://baike.baidu.com/item/%E9%A6%99%E6%A0%B9%E9%B8%A2%E5%B0%BE/7134760', 'image_url': 'https://bkimg.cdn.bcebos.com/pic/aa64034f78f0f7360878356f0e55b319eac413dd', 'description': '香根鸢尾(学名：Iris pallida Lamarck)是鸢尾科鸢尾属植物，多年生草本。根状茎粗壮而肥厚，扁圆形，斜伸，有环纹，黄褐色或棕色；须根粗壮，黄白色。叶灰绿色，外被有白粉，剑形。花茎光滑，绿色，有白粉；苞片3枚，膜质，银白色，卵圆形或宽卵圆形，其中包含有1-2朵花；花大，蓝紫色、淡紫色或紫红色，外花被裂片椭圆形或倒卵形，顶端下垂，爪部狭楔形，内花被裂片圆形或倒卵形，爪部狭楔形。蒴果卵圆状圆柱形，顶端钝，无喙，成熟时自顶端向下开裂为三瓣；种子梨形，棕褐色。花期5月，果期6-9月。原产于欧洲。主要分布于意大利、法国、摩洛哥及印度北部。意大利的佛罗伦萨地区为香根鸢尾的栽培中心。中国浙江、云南、河北等地有引种栽培。适生于地中海式气候。冬暖夏凉，喜光，较耐寒，但不能耐受盛夏的高温。该种植物的根状茎可提取香料，用于制造化妆品或作为药品的矫味剂和日用化工品的调香、定香剂。提取香成分之后的香根鸢尾根茎尚可作消毒熏烛、香囊等填充料；也是园林观赏植物。(概述图参考来源：)'}}, {'name': '鸢尾兰', 'score': 0.015439642, 'baike_info': {'baike_url': 'http://baike.baidu.com/item/%E9%B8%A2%E5%B0%BE%E5%85%B0/6276851', 'image_url': 'https://bkimg.cdn.bcebos.com/pic/023b5bb5c9ea15ce719bdbaeb5003af33a87b21b', 'description': '鸢尾兰(学名：Oberonia iridifolia Roxb.ex Lindl.)：茎短，不明显。叶近基生，5-6枚，二列套叠，两侧压扁，肥厚，基部有关节。花葶从叶丛中央抽出，长20-25厘米，超过叶的1倍，近圆柱形，下部两侧有狭翅；总状花序长达16厘米，直径5-6毫米，下垂，密生数百朵小花；花红褐色；花瓣卵状长圆形，长0.9-1.1毫米，宽约0.6毫米，边缘具不规则啮蚀状齿；唇瓣轮廓为宽卵形或近半圆形，长宽各约1.5毫米，不明显的3裂。蒴果椭圆形。花果期8-12月。生于林中树上，海拔1300-1400米。产中国云南，尼泊尔、锡金、印度、缅甸、老挝、越南、马来西亚、印度尼西亚、菲律宾也有分布。注：鸢尾兰和鸢尾是两种不同科的植物，鸢尾兰(Oberonia iridifolia)属于微子目兰科鸢尾兰属；鸢尾(Iris tectorum)属于百合目鸢尾科鸢尾属。(概述图片参考资料来源：)'}}, {'name': '矮鸢尾', 'score': 0.015403641, 'baike_info': {'baike_url': 'http://baike.baidu.com/item/%E7%9F%AE%E9%B8%A2%E5%B0%BE/551629', 'image_url': 'https://bkimg.cdn.bcebos.com/pic/5d6034a85edf8db162c8a12e0423dd54574e7492', 'description': '矮鸢尾(学名：Iris kobayashii)是属于鸢尾科鸢尾属的一种植物。是中国的特有植物。矮生草本，高约10厘米。茎极短，为叶片所包裹。叶剑形，长7~12厘米，宽6~10米。花葶从叶丛中伸出，着花1朵，花色繁多，有黄白、紫等色。花期4~5月。分布于中国大陆的辽宁等地，见于干燥的丘陵地，尚未由人工引种栽培。'}}], 'log_id': 1510513618272887176}\n"
     ]
    }
   ],
   "source": [
    "## \n",
    "# encoding:utf-8\n",
    "\n",
    "import requests\n",
    "import base64\n",
    "\n",
    "'''\n",
    "植物识别\n",
    "'''\n",
    "\n",
    "request_url = \"https://aip.baidubce.com/rest/2.0/image-classify/v1/plant\"\n",
    "# 二进制方式打开图片文件\n",
    "f = open('yuanweihua.jpeg', 'rb')\n",
    "img = base64.b64encode(f.read())\n",
    "\n",
    "payload={\n",
    "    'access_token':coco_AT,\n",
    "    'image':img,\n",
    "    'baike_num':5,\n",
    "    \"top_num\":5\n",
    "}\n",
    "\n",
    "\n",
    "headers = {'content-type': 'application/x-www-form-urlencoded'}\n",
    "response = requests.post(request_url, data=payload, headers=headers)\n",
    "if response:\n",
    "    print (response.json())\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bdb6493a",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "id": "f0758b9b",
   "metadata": {},
   "source": [
    "## 作业：尝试使用百度API图像识别其中一个\n",
    "* 做用户需求分析并设计一个最小可行性应用"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "dd44eaaa",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "hide_input": false,
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
